1. Field of the Invention
This invention relates to computer systems, specifically to computer-aided image processing, and more specifically to rendering spherical panoramic images from sets of component images.
2. Description of the Related Art
Image capture devices, such as cameras, may be used to capture an image of a section of a view or scene, such as a section of the front of a house. The section of the view or scene whose image is captured by a camera is known as the field of view of the camera. Adjusting a lens associated with a camera may increase the field of view. However, there is a limit beyond which the field of view of the camera cannot be increased without compromising the quality, or “resolution”, of the captured image. Further, some scenes or views may be too large to capture as one image with a given camera at any setting. Thus, it is sometimes necessary to capture an image of a view that is larger than can be captured within the field of view of a camera. In these instances, multiple overlapping images of segments of the view or scene may be taken, and then these component images may be joined together, or merged, to form a composite image.
One type of composite image is known as a panoramic image. A panoramic image may have a rightmost and leftmost image that each overlap only one other image, or alternatively the images may complete 360°, where all images overlap at least two other images. In the simplest type of panoramic image, there is one row of images, with each image at most overlapping two other images. However, more complex composite images may be captured that have two or more rows of images; in these composite images, each image may potentially overlap more than two other images. For example, a motorized camera may be configured to scan a scene according to an M×N grid, capturing an image at each position in the grid. Other geometries of composite images may be captured.
Computer programs and algorithms exist for assembling a single composite image from multiple potentially overlapping component images. A general paradigm for automatic image stitching techniques is to first detect features in individual images; second, to establish feature correspondences between pairs of images (pairwise stage); and third, to use the feature correspondences to infer the geometric relationship among all the images (multi-image stage).
One technique for forming a composite image from aligned component images projects the images onto a sphere, i.e., generates a “spherical projection”. Focal length, image center, image distortion (if any), and camera orientation may be determined for each image and used to map the image onto a sphere. For example, the orientation of the camera can be represented as a set of rotation angles (e.g., described by a 3×3 rotation matrix) from a reference orientation. The spherically mapped component images have less distortion than images mapped directly onto a plane. The spherical image can be unwrapped to derive a planar composite image, for example to print the composite image.
The composite image may be further processed to blend the seams of the overlapping component images. For example, pixel values along the seams of the overlapping component images can be modified to provide a smooth transition between the images.